1. Field of the Invention
The present invention relates to designing and printing customized documents. More particularly, the present invention relates to a computer based system and method for customizing a document online and then printing the document, at either a remote or a local printer.
2. General Background and State of the Art
Computer software for custom document design enables users to design and print custom-created documents, such as invitations, business cards, posters, and the like. There is wide-spread demand for custom document design software. For example, retailers need custom-printed point-of sale displays and advertising materials; direct marketers utilize printed materials for direct mailings and coupons; promotion firms use printed materials to announce events; independent business persons and entrepreneurs use printed materials for advertising, and also need customized stationary, business cards, and the like.
Until recently, custom document design software was typically resident on a user's personal computer. Software such as the highly-regarded Avery Wizard®, used in Microsoft Word®, and LabelPro® programs allow users to customize and personalize documents on a personal computer, and then print the documents at a local printer. While these programs are very popular and are in wide-spread use, the development of the Internet opens up new possibilities for custom document design. With existing PC-based document customization and personalization software, the user must take time to install the software on the personal computer. Even after the software is loaded onto the personal computer, it must be periodically upgraded, which takes still further time. Also, changes in a printing company's paper product line cannot be implemented within the locally installed software, unless the software is upgraded or re-installed. Therefore, maintenance on such software applications is time consuming and, perhaps, not likely to occur. This makes it difficult for users to maintain consistent access to current paper product lines as new paper products are introduced, changed, or added.
There are now a few client-server, network-based custom-printing systems that allow a user to access software that is stored on a server, design a document while connected to the server, and then print the document after the design has been completed. However, existing network-based printing systems do not provide sufficient speed and flexibility. One common approach is to first build a graphical representation of a document to be printed (or “render” the document image) on the server. Then, the graphical representation is converted into a format such as a Portable Document Format (“PDF”), and the PDF file is transmitted to the client. The client then renders the image again on the client before printing it on a printer. The process of rendering the image two times—first at the server and then at the client—is slow and inefficient. The capacity of the server to serve multiple simultaneous users is also limited by the need to undertake the computationally-intensive task of rendering the graphic on the server.
Another problem with existing network-based systems for designing and printing customized documents relates to the manner in which the web browser communicates with the server. A web browser is a mechanism for housing software and viewing text and graphics from the Internet. The browser running on the user's computer accepts the data from the user and formats the data into a data stream using HyperText Markup Language (“HTML”). The phrase “data stream,” when used herein, applies equally to data received as if it were an incoming stream and to data that has been received in this manner and stored in a file. HTML is a standardized notation for displaying text and graphics on a computer display screen, as well as providing more complex information such as animated video and sound.
In addition to the inflexibility of network-based custom-printing systems as described above, these systems require significant amounts of time and energy to manage, maintain and upgrade. For example, as a product line develops, changes, and expands, network-based custom-printing systems operated on web sites utilizing HTML documents must be continually updated to reflect these changes in the product line. Additionally, changes to the operation of the system may only be implemented by updating the HTML documents. Further, the number of HTML documents that must be managed can become excessive as the product line grows. For example, if each available product is represented by an HTML document which is then updated as the user enters changes during a customization process, the number of HTML documents utilized by the system is at least as large as the number of products available within the product line. Further, variations on products may require separate HTML documents, thereby multiplying the number of documents that must be managed, maintained and updated within such a system. Moreover, the number of HTML documents increases as the systems become operable in various countries, as a separate HTML document for each product must be created in the native language of each country. These significant maintenance efforts translate to increased time and cost to operators of such network-based printing systems.